package com.zsc.wxm.ysh.anjo.service.base.model.resources.dto;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.List;

/**
 * 描述：
 *
 * @author playmaker
 * @since 2021/2/15 21:30
 */
@Data
@NotNull
public class ResourcesDTO implements Serializable {

    private static final long serialVersionUID = -5063413530896255485L;

    private Long id;

    @ApiModelProperty(value = "房源标题")
    @NotBlank(message = "房源标题不能为空")
    private String title;

    @ApiModelProperty(value = "房源编号")
    private String code;

    @ApiModelProperty(value = "楼盘Id")
    @NotNull(message = "楼盘不能为空")
    private Long estateId;

    @ApiModelProperty(value = "楼号(栋)")
    @NotBlank(message = "房源楼号(栋)不能为空")
    private String buildingNum;

    @ApiModelProperty(value = "单元号")
    @NotBlank(message = "房源单元号不能为空")
    private String buildingUnit;

    @ApiModelProperty(value = "门牌号")
    @NotBlank(message = "房源门牌号不能为空")
    private String buidingFloorNum;

    @ApiModelProperty(value = "租金")
    @NotBlank(message = "房源租金不能为空")
    private String rent;

    @ApiModelProperty(value = "租赁方式，1-整租，2-合租")
    @NotNull(message = "租赁方式不能为空")
    private Integer rentMethod;

    @ApiModelProperty(value = "支付方式，1-付一押一，2-付三押一，3-付六押一，4-年付押一，5-其它")
    @NotNull(message = "支付方式不能为空")
    private Integer paymentMethod;

    @ApiModelProperty(value = "户型，如：2室1厅1卫")
    @NotBlank(message = "户型不能为空")
    private String houseType;

    @ApiModelProperty(value = "建筑面积")
    @NotBlank(message = "建筑面积不能为空")
    private String coveredArea;

    @ApiModelProperty(value = "使用面积")
    @NotBlank(message = "使用面积不能为空")
    private String useArea;

    @ApiModelProperty(value = "楼层，如：8/26")
    @NotBlank(message = "楼层不能为空")
    private String floor;

    @ApiModelProperty(value = "朝向：东、南、西、北")
    @NotNull(message = "朝向不能为空")
    private Integer orientation;

    @ApiModelProperty(value = "装修，1-精装，2-简装，3-毛坯")
    @NotNull(message = "装修类型不能为空")
    private Integer decoration;

    @ApiModelProperty(value = "配套设施， 如：1,2,3")
    private String facilities;

    @ApiModelProperty(value = "配套设施， 名称数组")
    @NotEmpty(message = "配套设施不能为空")
    private List<String> facilitiesArray;

    @ApiModelProperty(value = "描述")
    private String houseDesc;

    @ApiModelProperty(value = "联系人")
    @NotBlank(message = "业主联系人不能为空")
    private String constact;

    @ApiModelProperty(value = "手机号")
    @NotBlank(message = "手机号不能为空")
    private String phone;

    @ApiModelProperty(value = "看房时间，1-上午，2-中午，3-下午，4-晚上，5-全天")
    @NotNull(message = "看房时间不能为空")
    private Integer time;

    @ApiModelProperty("上传房源的用户id,即是房东id")
    @NotNull(message = "房东id不能为空")
    private Long userId;
}
